package com.wengu.algorithm.entity;

import java.util.Date;
import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 任务分配场景主表
 * </p>
 *
 * @author wanghailei
 * @since 2025-02-09
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class TaskAssignmentScenario implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 初始化任务数量
     */
    private Integer initialTaskCount;

    /**
     * 空间的长度
     */
    private Integer spaceLength;

    /**
     * 空间的宽度
     */
    private Integer spaceWidth;

    /**
     * 任务到达的时间间隔（秒）泊松速率
     */
    private Double taskArrivalInterval;

    /**
     * 用户到达的时间间隔（秒）泊松速率
     */
    private Double userArrivalInterval;

    /**
     * 创建时间
     */
    private Date createDate;

    /**
     * 更新时间
     */
    private Date updateDate;

    /**
     * 逻辑删除标识：0=正常，1=删除
     */
    private Integer deleteFlag;

    /**
     * 是否区分感知能力标识，0=不区分，1=区分
     */
    private String skillFlag;

    /**
     * 生成数据的版本号，同一个版本号为同一批数据
     */
    private Integer versionNo;

    /**
     * 仿真持续时间
     */
    private Integer duration;
    /**
     * 预算比值的平均值
     */
    private Double budgetRatioMean;
    /**
     * 总补偿比值
     */
    private Double compensationRatio;
    /**
     * 任务执行补偿费用均值
     */
    private Double taskExecutionCostMean;
    /**
     * 任务执行补偿费用标准差
     */
    private Double taskExecutionCostStddev;

    /**
     * 成功概率平均值
     */
    private Double successProbMean;
}
